x86/VPMU: Initialize VPMU's lvtpc vector
authorBoris Ostrovsky <boris.ostrovsky@oracle.com>
Tue, 24 Nov 2015 17:33:08 +0000 (18:33 +0100)
committerJan Beulich <jbeulich@suse.com>
Tue, 24 Nov 2015 17:33:08 +0000 (18:33 +0100)
commit0c3f24645b07b875bc1294fb4627f01e030690fe
tree1ec334fa034dbb84685221c69e7cae9162f635de
parentc03480cf5c4e96fb4afb2237ad0a3cac7162564a
x86/VPMU: Initialize VPMU's lvtpc vector

If a guest sets up performance counters so that they can generate
a PMC interrupt but does not initilaize APIC LVTPC register the
resulting interrupt will cause an APIC error.

Note that a guest deciding to clear LVTPC in order to unduce the error
will not be successful in achieving its goal: emulation code only
looks at the mask bit and always sets the vector to PMU_APIC_VECTOR.
Only the initial value of LVTPC (which is zero) that gets loaded into
APIC as result of PMC initialization is the problem.

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
xen/arch/x86/cpu/vpmu.c